home *** CD-ROM | disk | FTP | other *** search
/ NetNews Offline 2 / NetNews Offline Volume 2.iso / news / comp / sys / amiga / programmer / 4539 < prev    next >
Encoding:
Internet Message Format  |  1996-08-05  |  2.4 KB

  1. Path: vixen.cso.uiuc.edu!msaladin
  2. From: msaladin@students.uiuc.edu (Saladino Michael D)
  3. Newsgroups: comp.sys.amiga.programmer
  4. Subject: Re: One hardware-basher's manifesto
  5. Date: 29 Feb 1996 23:48:33 GMT
  6. Organization: University of Illinois at Urbana
  7. Message-ID: <4h5e0h$iae@vixen.cso.uiuc.edu>
  8. References: <4ge8na$vhe@ar.ar.com.au> <08000305729070351637@BIRDLAND> <4guenp$1a1@vixen.cso.uiuc.edu> <4h51kg$cio@maureen.teleport.com> <4h59q5$hvl@maureen.teleport.com>
  9. NNTP-Posting-Host: ux5.cso.uiuc.edu
  10.  
  11. sschaem@teleport.com (Stephan Schaem) writes:
  12.  
  13. >:  You do not ALWAYS access ram linearly... Drawing a vertical line in 32bit
  14. >:  color only accessing ram linearly?
  15.  
  16. >: ..    move.l    d0,(a0)
  17. >:     adda.l    a1,a0
  18. >:     dbra    d0,..
  19.  
  20. > What I really wanted to show (above is a bad example) is that GFX
  21. > function can pretty much access ram 'randomly' for writes & READS.
  22.  
  23. > The 'worse' case senario is free direction texture mapping.
  24.  
  25. Aren't we thinking one-dimensionally today?  What about the next line
  26. drawn next to it.  Could be entirely cache hits.  And the one after
  27. that?  You know modern day caches are many K in size and can hold
  28. quite a bit.  In case you aren't understanding me, let's say you
  29. want to fill a square with, oh let's say green.  And just because
  30. you like a challenge, you fill it vertically.  The first line drawn
  31. will give you nothing but misses, assuming the cache is initially
  32. empty.  However, it's that second one... that's the ticket.  It could
  33. be nothing but cache hits depending on the size and mapping of the
  34. cache.  And guess what, same goes for the third and forth line.
  35. Now, this argument doesn't work well for some sad little 256 byte
  36. cache (020s take a step back).  Hell, even a 4K will only give you
  37. a benifit for small polygons, but it could be there.  And that's my
  38. point.  Yes, graphic routines can appear very random at times, but
  39. given a large enough cache (ever see what modern day processors are
  40. comin' with), you can use them to your advantage.  So, many of your
  41. points are valid on little sad chips that were designed years or even
  42. a decade ago, but on today's stuff, it doesn't hold true.
  43.  
  44. And, as for free direction texture mapping being the worse case, it
  45. ain't.  The problem is caused by the size of the line and how it maps
  46. into the cache.  You could draw a line that appears quite random, but
  47. the second line drawn might hit every single pixel due to this same
  48. randomness and how it mapped into the cache.
  49.